package com.cskaoyan.javase.swing.manager.stage2.controller.impl;

import com.cskaoyan.javase.swing.manager.stage2.controller.UserController;
import com.cskaoyan.javase.swing.manager.stage2.dao.UserDao;
import com.cskaoyan.javase.swing.manager.stage2.dao.impl.UserDaoImpl;
import com.cskaoyan.javase.swing.manager.stage2.model.User;

/**
 * 与管理员用户相关的,业务操作的实现
 * @since 20:18
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class UserControllerImpl implements UserController {

    // 业务处理需要获取数据,所以需要依赖数据处理层
    private UserDao userDao = new UserDaoImpl();

    /**
     * 判断能否登陆,true表示能够登陆，否则为账户/密码错误,则禁止登录
     * @since 20:26
     * @param user 根据用户键盘输入封装的用户对象
     * @return boolean
     * @author wuguidong@cskaoyan.onaliyun.com
     */
    @Override
    public boolean judgeLogin(User user) {
        String usernameInput = user.getUsername();
        String passwordInput = user.getPassword();
        if (!userDao.checkUserExist(usernameInput)) {
            // 说明用户不存在
            return false;
        }
        // 用户存在，检查密码是否正确
        String realPass = userDao.getPassByUsername(usernameInput);
        //密码正确
        return realPass.equals(passwordInput);
    }
}
